This application incorporates by reference Taiwanese application Serial No. 88103346, filed May 3, 1999.
1. Field of the Invention
The invention relates in general to a method of remote booting, and more particularly to a method of remote booting by utilizing a network interface card.
2. Description of the Related Art
The conventional network system of the Local Area Network (LAN) includes one server and at least one client computer. In the present network computer systems, considering efficiency, the stability and the safety, the Windows New Technology (NT) Server of Microsoft Corporation can be used for the operating system of the network management. By utilizing the Client-Server structure, it can work efficiently. For example, components can communicate with each other in the network to provide dynamic resource sharing in the Internet or the Intranet.
Owing to the emergence of graphics oriented operating systems, such as Windows, TM, OS/2 etc., there is a bottleneck between the processor and the display peripherals in the standard Input/Output (I/O) of the Personal Computer (PC). Therefore, in order to improve the system efficiency, the designers of the PC utilize the local bus to connect the high bandwidth peripherals to the bus of the processor.
The Industrial Standard Architecture (ISA) bus, a highly efficient 16-bit I/O slot bus for expanding, was presented by IBM in 1984. It made highly efficient PCs become popular. Considering the price and the efficiency, the 32-bit/64-bit Peripheral Component Interconnect (PCI) bus is the most popular and widely accepted by PC users among the various designs of the local bus.
FIG. 1 is a block diagram of the conventional network system. The main server 10 utilizes Windows NT Server as the operating system and includes at least one client computer 12 relating to the main server 10. The client computer 12 includes the network interface card 16 and the memory 18. The client computer 12 couples to the main server 10 through network interface card 16 to load the relative operating system and the driver program. The network interface card 16 includes the boot ROM 14. The network interface card of the prior art includes two types: an ISA network interface card is coupled through the ISA bus and a PCI network interface card is coupled through the PCI bus.
FIG. 2 shows a block diagram of a conventional computer system formed by utilizing the PCI bus. Referring to FIG. 2, the PCI bus 200 connects to the Central Processing Unit (CPU) 204, the cache 206, the Dynamic Random Access Memory (DRAM) 208 through the north bridge 202 and connects to the keyboard/mouse 212 through the south bridge 210. It also connects to the outer network system 220 through the network interface card 218. The north bridge 202 and south bridge 210 are intelligent peripheral controlled chip sets. The north bridge 202 is used to process the peripherals with high speed and efficiency. The south bridge 210 is used to process the low speed peripherals.
FIG. 3 shows a flowchart of the booting steps of the conventional client computer. It shows the booting steps of the client computer coupled to an ISA network interface card. First, in the step S300, the boot Read Only Memory (ROM) 14 of the network interface card 16 is started. Then the main server 10 is logged in by utilizing the boot ROM 14 in the step S302.
In the step S304, the client computer 12 downloads the Network Driver Interface Specification 2 (NDIS2) driver from the main server 10 to the main memory of the system. The system batch executes the NDIS2 driver. The NDIS2 driver is determined by Microsoft for the network interface card driver specification.
When the NDIS2 driver is executed, the client computer 12 downloads the operating system, such as the Disk Operating System (DOS), from the main server 10. After DOS is downloaded to the main memory of the system, the client computer 12 boots itself by DOS in the step S306. In the step S306, DOS is used to manage Windows 95, which is loaded later.
In the step S308, the NDIS2 driver is ended after DOS has completed the booting. In the step S310, the system batch of the client computer 12 executes the NDIS2 driver. Thereafter, the client computer 12 downloads another operating system such as Windows 95 from the main server 10. Then client computer 12 utilizes Windows 95 to complete the booting procedures.
The hardware interrupt signal of the ISA network interface card is edge triggered. Therefore, when the client computer utilizes the ISA network interface card, it generates only one hardware interrupt signal. Then it has no influence on the booting procedures that the hardware interrupt signal is not cleared in the booting procedures, so that the booting procedures can be smoothly performed. In other words, when the client computer utilizes the ISA network interface card, the above-mentioned booting procedures can be completed.
FIG. 4 illustrates the booting procedures of the client computer coupled to the PCI network interface card. Steps S400-S406 are the same as steps S300-S306 and are not discussed again.
The hardware interrupt signal of the PCI network interface card is level triggered. Therefore, when the client computer utilizes a PCI network interface card, the booting procedures can not be completed. In the step S408 of ending the NDIS2 driver, the existence of a hardware interrupt signal which is not cleared according to the conventional method causes the stack of the operating system (DOS, for example) to overflow. Therefore DOS is hanged. In other words, the booting procedures are stopped in the step S410, which makes the PCI network interface card fail to work normally.
However, the speed of the PCI network interface card is faster than that of the ISA network interface card. Therefore, the PCI network interface card becomes a mainstream product, but it can not work properly in the remote booting procedures of the computer in the LAN as mentioned above.
It is therefore an object of the invention to provide a method of remote booting used in a LAN which has a server and at least one client computer. The client computer has a memory and is coupled to the server through a network interface card. The network interface card has a driver and a interrupt vector table. First the boot ROM of the network interface card is started. Then, the client computer logs in the server and downloads and executes the network interface card""s driver which has a detecting program. Next, the detecting program is executed to detect a first interrupt signal and intercept the first interrupt signal when it is detected. Then, a backup of the interrupt vector table of the network interface card is made in the memory. The detecting program is executed again to detect the first interrupt signal. Next, the client computer downloads and executes the first operating system from the server. Then, the driver is ended by utilizing the second interrupt signal. Afterwards, the first operating system calls the first interrupt signal. Next, the second interrupt signal is cleared when the interrupt vector table is different from the backup of the interrupt vector table in the memory. The driver is executed. The client computer downloads and executes the second operating system from the server.
It is therefore another object of the invention to provide a method for supervising in order to clear a first interrupt signal of a PCI network interface card of a client computer in a LAN which comprises a main server and at least one client computer. The client computer is coupled to the main server through a network interface card which is coupled to the PCI bus of the client computer. The method comprising the following steps. The client computer downloads and executes a driver of the network interface card. The driver has a detecting program in it. The client computer executes the detecting program to detect whether the driver is unloaded or not. When the driver is unloaded, the driver clears automatically the first interrupt signal of the network interface card.
Therefore, the problems in the conventional method that the operating system is hanged and the booting procedures can not completed are overcome and the purposes of the invention are achieved.